﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Data.SqlTypes;

namespace Jurassic_Island
{
    public class ENLugares
    {
        private string nombre;
        private string descripcion;
        private Int16 coordX;
        private Int16 coordY;
        private string imagen;
        private CADLugares cadLugares = new CADLugares();

        public ENLugares()
        {
            nombre = "";
            descripcion = "";
            coordX = 0;
            coordY = 0;
        }

        public ENLugares(DataRow drLugar)
        {
            nombre = drLugar["Nombre"].ToString();
            descripcion = drLugar["Descripcion"].ToString();
            coordX = Int16.Parse(drLugar["Coordenada X"].ToString());
            coordY = Int16.Parse(drLugar["Coordenada Y"].ToString());
        }

        public string Nombre
        {
            get { return nombre; }
            set { nombre = value; }
        }

        public string Descripcion
        {
            get { return descripcion; }
            set { descripcion = value; }
        }

        public Int16 CoordX
        {
            get { return coordX; }
            set { coordX = value; }
        }

        public Int16 CoordY
        {
            get { return coordY; }
            set { coordY = value; }
        }

        public string Imagen
        {
            get { return imagen; }
            set { imagen = value; }
        }



        //MÉTODOS
        //método que devuelve toda la tabla Objetos en un DataSet
        public DataSet ObtenerListaLugares()
        {
            DataSet resultado = new DataSet();

            try
            {
                resultado = cadLugares.ObtenerTablaLugares();
            }

            catch (Exception ex)
            {
                throw (ex);
            }

            return resultado;
        }

        //Actualiza la tabla Caminos llamando al método correspondiente de CADCaminos
        public bool ActualizarLugares(DataSet dsLugares)
        {
            bool resultado = false;

            try
            {
                resultado = cadLugares.ActualizarLugares(dsLugares);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return resultado;
        }

        public DataSet BuscarListaLugares(string filtro)
        {
            DataSet resultado = new DataSet();

            try
            {
                resultado = cadLugares.ObtenerFitradoLugares(filtro);
            }

            catch (Exception ex)
            {
                throw (ex);
            }

            return resultado;
        }

        public bool ExisteLugar(string nombre)
        {
            bool existe = false;

            try
            {
                existe = cadLugares.ExisteLugar(nombre);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return existe;
        }

        public DataSet ObtenerNombresLugares()
        {
            DataSet resultado = new DataSet();

            try
            {
                resultado = cadLugares.ObtenerNombresLugares();
            }

            catch (Exception ex)
            {
                throw (ex);
            }

            return resultado;
        }
    }
}
